package com.chixing.fourteen.service;

import com.chixing.fourteen.pojo.CustomerOrder;
import com.chixing.fourteen.pojo.Message;

import java.util.List;

/**
 * @author Y2014188432
 */
public interface CustomerOrderService {
    /**
     * 创建一个新的订单
     * 当点击打车时调用此方法
     * @param id 用户 id
     * @param startPlace 出发地
     * @param endPlace 目的地
     * @param remake 备注
     * @param length 总里程
     * @return 受影响行数
     */
    public int createOrder(int id,String startPlace,String endPlace,String remake,double length);

    /**
     * 根据用户 id 查询所有订单（进行分页操作，按时间降序排列）
     * @param id 用户 id
     * @param page 起始页码
     * @return 订单 List 集合
     */
    public List<CustomerOrder> findAll(int id,int page);

    /**
     * 改变订单状态
     * 状态码：  1、等待接单 2、已有司机接单 3、订单已完成 4、订单已付款 5、订单已取消
     * @param id 订单 id
     * @param status 所要更改的状态
     * @return 受影响行数
     */
    public int changeStatus(int id,int status);

    /**
     * 根据用户 id 查询订单总数
     * @param customerId 用户 id
     * @return 订单总数
     */
    public int getCustomerOrderCount(int customerId);

    /**
     * 查询已经支付的订单详细信息
     * @param customerOrderId 订单 id
     * @return Message
     */
    public Message getMessage(int customerOrderId);
}
